A software development team testing two different versions of an application program often needs to compare application documents or in-memory objects manipulated by the application program in order to determine if processing of the documents or objects in a new version of the application is flawed or may have been inadvertently changed. It may be complicated and difficult to compare the application documents as saved to a file, for example, because changes in file format may have occurred between the versions, or the application documents as saved to storage may not have a specific order or form.
There also may not be a method for generically comparing the entire application document or any subsets of objects therein when the application documents are loaded by the program. Therefore, the development team may manually compare a single aspect or a subset of data in the application document related to the software changes that were made between the versions of the application program, instead of comparing the entire document structure while testing. However, other portions or data in the application document outside of the subset tested could potentially differ as a result of the software changes, and these differences may go undetected in the testing of new versions of the software. This may result in new bugs being introduced into the software product.
It is with respect to these considerations and others that the disclosure made herein is presented.